<script>
    // 它类似于数组，但是成员的值都是唯一的，没有重复的值
    // 1.创建 new Set([])  放类数组
    let s1 = new Set([10, 20, 30, 3,5,1,3,5,3,5,3,3,3])
    console.log(s1); // Set(7) {10, 20, 30, 3, 5, …}

    // 2.属性
    // 长度：size属性
    let size = s1.size;
    console.log(size); // 7

    // 3.方法
    let s2 = new Set([11,22,33])
    // 3.1 add(值)：给集合添加值，返回新set
    s2 = s2.add('真好');
    console.log(s2); // Set(4) {11, 22, 33, '真好'}

    // 3.2 delete(值): 删除某个值，返回布尔值，表示是否删除成功
    var res = s2.delete(22);
    console.log(res, s2); // true Set(3) {11, 33, '真好'}

    // 3.3 has(值): 查询这个值是否时集合的成员，返回布尔值
    console.log( s2.has(33) ); // true
    console.log( s2.has('ab') ); // false

    // 3.4 clear(): 清空集合,没有返回值
    s2.clear();
    console.log(s2); // Set(0) {size: 0}

    // 4.数组去重(掌握)
    let list = [ 3,1,2,4,5,3,2,3,5,6,3,5];
    let s3 = new Set(list)
    console.log(s3); // Set(6) {3, 1, 2, 4, 5, …}
    // 使用Array.form()转换为数组
    let newArr = Array.from(s3);
    console.log(newArr); //  [3, 1, 2, 4, 5, 6]
</script>